package com.vmtest;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.database.sqlite.SQLiteOpenHelper;

import static android.provider.BaseColumns._ID;

public class Handler_sqlite extends SQLiteOpenHelper{
	
	private final static String DB_PATH = "/data/data/com.vmtest/databases/";	     
    private final static String DB_NAME = "vmdata"; //El nombre del archivo de nuestra base de datos    
	
	public Handler_sqlite(Context ctx)
	{
		super(ctx, DB_NAME, null, 1);
	}
	
	@Override
	public void onCreate(SQLiteDatabase db)
	{
		boolean dbExist = checkDataBase();
		 
    	if(dbExist){
    		//Si existe la base de datos no hace nada
    	}else{
		String query = "CREATE TABLE vmusuarios ("+_ID+" INTEGER PRIMARY KEY, usuario TEXT, nombre TEXT, clave BLOB, region integer, tipousuario integer, telefono TEXT, email TEXT, fecha TEXT, estatus integer, persona TEXT);";
				
		db.execSQL(query);
    	}
	}
	
	private boolean checkDataBase(){
 
    	SQLiteDatabase checkDB = null;
 
    	try{
    		String myPath = DB_PATH + DB_NAME;
    		checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
 
    	}catch(SQLiteException e){ 
    		//database does't exist yet. 
    	}
 
    	if(checkDB != null){
 
    		checkDB.close();
 
    	}
 
    	return checkDB != null ? true : false;
    }
	/*@Override
	public void onUpgrade(SQLiteDatabase db, int version_ant, int version_nue)
	{
		db.execSQL("DROP TABLE IF EXISTS usuarios");
		onCreate(db);
	}
	
	public void insertarReg(String usr, String pass)
	{
		ContentValues valores = new ContentValues();
		valores.put("user", usr); //COLUMNA de usuario (user) un nombre de usuario
		valores.put("password", pass);//COLUMNA password, insertamos un valor que es pass
		this.getWritableDatabase().insert("usuarios",null, valores);
	}
	*/
	
	public void insertarReg(String usu, String nom,String cla, String reg,String tusu, String telf,String email, String fec,String stat, String pers)
	{
		ContentValues valores = new ContentValues();
		valores.put("usuario", usu); //COLUMNA de usuario (user) un nombre de usuario
		valores.put("nombre", nom);//COLUMNA password, insertamos un valor que es pass
		valores.put("clave", cla);
		valores.put("region", reg);
		valores.put("tipousuario", tusu);
		valores.put("telefono", telf);
		valores.put("email", email);
		valores.put("fecha", fec);
		valores.put("estatus", stat);
		valores.put("persona", pers);
		this.getWritableDatabase().insert("vmusuarios",null, valores);
	}
	
	/*public String[] leer()
	{
		String result[] = new String [3];
		String columnas[]= {_ID,"user","password"};*/
	public String leer()
	{
		String result = "";
		String columnas[]= {_ID,"usuario","clave"};		
		Cursor c = this.getReadableDatabase().query("vmusuarios", columnas, null, null,null, null, null);		
		c.moveToFirst();		
		int id,iu,ip;
		id = c.getColumnIndex(_ID);
		iu = c.getColumnIndex("usuario");
		ip = c.getColumnIndex("clave");
				
		/*int contador=0;
		for(c.moveToFirst();!c.isAfterLast();c.moveToNext())
		{
			result[contador] = c.getString(id)+" "+c.getString(iu)+" "+c.getString(ip) +"\n";
			contador++;
		}*/		
		//c.moveToLast();
		
	    result = c.getString(id)+" "+c.getString(iu)+" "+c.getString(ip) +"\n";		
	    return result;	    
	}
	
	public void abrir()
	{
		this.getWritableDatabase();
		
	}
	
	public void cerrar()
	{
		this.close();
	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		// TODO Auto-generated method stub
		
	}

}